﻿namespace Beetle.Clients
{
    using Beetle;
    using Smark.Core;
    using System;
    using System.Net.Sockets;
    using System.Reflection;
    using System.Text;

    public interface ITcpSyncChannel : IDisposable
    {
        void Connect(string host, int port);
        object Send(object data);

        Encoding Coding { get; set; }

        bool Connected { get; }

        bool IsDisplsed { get; }

        object this[string name] { get; set; }

        Beetle.Package Package { get; }

        KeyValueCollection<object> Properties { get; }

        System.Net.Sockets.Socket Socket { get; }

        int Timeout { get; set; }
    }
}

